﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using DataAnnotationsExtensions;
using System.Globalization;

using System.Web.Mvc;

namespace JPSOFTWARE.BON.Modelos
{
    public enum StatusUsuario
    {
        Ativo = 1,
        Inativo = 2
    }

    public class LoginModel
    {
        [Required(ErrorMessage = "Obrigatório.", AllowEmptyStrings = false)]
        [Email(ErrorMessage = "E-mail inválido.")]
        [RegularExpression(@"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", ErrorMessage = "Use apenas letras (a-z), números, pontos e traços.")]
        [Display(Name = "E-mail:* ")]
        public string EmailLogin { get; set; }

        [Required(ErrorMessage = "Obrigatório.", AllowEmptyStrings = false)]
        [StringLength(8, ErrorMessage = "A Senha deve ter no máximo 8 caracteres.")]
        [DataType(DataType.Password)]
        [Display(Name = "Senha:* ")]
        public string SenhaLogin { get; set; }

        [Display(Name = "Relembreme-me?")]
        public bool RelembremeMe { get; set; }
    }

    public class AlterarSenhaModel
    {        
        //[HiddenInput(DisplayValue = false)]
        public int IdUsuario { get; set; }

        [Required(ErrorMessage = "Obrigatório.")]
        [DataType(DataType.Password)]
        [StringLength(8, ErrorMessage = "Execedeu número de caracteres.")]
        [Display(Name = "Senha atual:* ")]
        //[Remote("VerificaSenhaUsuario", "Usuario", HttpMethod = "POST", ErrorMessage = "Senha não corresponde a senha atual. Digite sua senha.")]
        public string SenhaAtual { get; set; }

        [Required(ErrorMessage = "Obrigatório.")]
        [DataType(DataType.Password)]
        [StringLength(8, ErrorMessage = "Execedeu número de caracteres.")]
        [Display(Name = "Nova senha:* ")]
        public string NovaSenha { get; set; }

        [Required(ErrorMessage = "Obrigatório.")]
        [DataType(DataType.Password)]
        [StringLength(8, ErrorMessage = "Execedeu número de caracteres.")]
        [Display(Name = "Confirme:* ")]
        [Compare("NovaSenha", ErrorMessage = "A nova senha e a confirmação não são iguais.")]
        public string ConfirmaSenha { get; set; }
    }
}
